package pay.entity;


import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableLogic;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;

import java.util.Date;

@Data
@TableName("authenticated_game")
public class AuthenticatedGameEntity extends BaseEntity {


    /**
     * 自增id
     */
    @TableId
    private Integer id;

    /**
     * 赛事名称
     */
    @TableField("only_name")
    private String onlyName;

    /**
     * 赛事名称
     */
    @TableField("name")
    private String name;

    /**
     * 1 跑步
     * 2 骑行
     * 3 游泳
     */
    @TableField("sport_type")
    private String sportType;

    /**
     * 举办年份
     */
    @TableField("year")
    private Integer year;
    /**
     * 届数 数字
     */
    @TableField("period")
    private Integer period;
    /**
     * 届数 文字
     */
    @TableField("period_name")
    private String periodName;
    /**
     * 周期 1一年一次 2一年多次
     */
    @TableField("cycle")
    private Integer cycle;
    /**
     * 赛事类型 1独立 2联赛
     */
    @TableField("type")
    private Integer type = 2;
    /**
     * 删除
     */
    @TableField("del")
    @TableLogic
    private Integer del;


    /**
     * 远程接口获取的比赛专属id，用于判断是否重复
     */
    @TableField("game_id")
    private Integer gameId;

    @TableField("authenticated_id")
    private Integer authenticatedId;

    //联系手机
    @TableField("phone")
    private String phone;

    //联系时间字符串
    @TableField("time_str")
    private String timeStr;

    //比赛时间
    @TableField("game_time")
    @JsonFormat(pattern = "yyyy/MM/dd")
    private Date gameTime;

    //报名开始时间
    @TableField("start_time")
//    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date startTime;


    //报名结束时间
    @TableField("end_time")
//    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date endTime;


    @TableField("banner")
    private String banner;

    @TableField("pic")
    private String pic;

    /**
     * 省市区
     */
    @TableField("region")
    private String region;
    /**
     * 省市区code
     */
    @TableField("region_code")
    private String regionCode;


    //比赛开始时间
    @TableField("game_start")
    @JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss")
    private Date gameStart;


    //比赛结束时间
    @TableField("game_end")
    @JsonFormat(pattern = "yyyy/MM/dd HH:mm:ss")
    private Date gameEnd;

    @TableField("address")
    private String address;

    /**
     * 计入排行榜规则
     * 0 不计入排行榜
     * 1 计入认证赛事排行榜
     * 2 计入娱乐赛事排行榜
     */
    @TableField("is_standard")
    private Integer isStandard;

    //是否发布 0 未发布 1已发布
    @TableField("is_publish")
    private Integer isPublish;

    //审核状态 0 待审核  1 审核 2拒绝
    @TableField("status")
    private Integer status;

    //拒绝原因
    @TableField("reason")
    private String reason;

    //免责声明
    @TableField("disclaimer")
    private String disclaimer;

    /**
     * 证书生成时间
     */
    @TableField("certificate_time")
    private Date certificateTime;

    /**
     * 是否可报名多项
     */
    @TableField("can_multiple")
    private Integer canMultiple;

    /**
     * 比赛详情
     */
    @TableField("content")
    private String content;

    /**
     * 赛事类型
     * 1 赛事
     * 2 平台活动
     * 3 俱乐部活动
     * 4 达人线路
     */
    @TableField("auth_type")
    private Integer authType;

    @TableField("is_recommend")
    private Integer isRecommend;

    @TableField("sort_weight")
    private Integer sortWeight;

    public AuthenticatedGameEntity() {
        authenticatedId = 3;
    }

}
